from pydantic import BaseModel, Field
from typing import Optional


class StaffCreate(BaseModel):
    name: str = Field(..., description="业务员姓名")
    department: str = Field(..., description="所属事业部")
    type: str = Field(..., description="类型")
    pm: str = Field(..., description="PM")
    status: str = Field(..., description="状态")
    supervisor: str = Field(..., description="主管")
    is_supervisor: str = Field("N", description="是否主管(Y/N)")
    third_department: str = Field(..., description="三级部门")
    industry: str = Field(..., description="行业")


class StaffUpdate(BaseModel):
    name: Optional[str] = Field(None, description="业务员姓名")
    department: Optional[str] = Field(None, description="所属事业部")
    type: Optional[str] = Field(None, description="类型")
    pm: Optional[str] = Field(None, description="PM")
    status: Optional[str] = Field(None, description="状态")
    supervisor: Optional[str] = Field(None, description="主管")
    is_supervisor: Optional[str] = Field(None, description="是否主管(Y/N)")
    third_department: Optional[str] = Field(None, description="三级部门")
    industry: Optional[str] = Field(None, description="行业")